void main() {
  /**
   * Dart中布尔值的比较是显示的，并不是隐式的
   * 1. 布尔值（Boolean）
   *   1. true
   *   2. false
   * 2. 布尔值的常用API
   *    1. 布尔值的取反(!)
   *    2. 布尔值的与(&&)
   *    3. 布尔值的或(||)
   *    4. 布尔值的异或(^)
   * 3. 布尔值的比较
   *    1. ==
   *    2. !=
   *    3. >
   *    4. <
   *    5. >=
   *    6. <=
   */

  // 声明布尔类型
  bool isTrue = true;
  bool isFalse = false;
  print('isTrue: $isTrue');
  print('isFalse: $isFalse');

  // 判断
  var result;
  if (result != null) {
    print("result is true");
  } else {
    print("result is false");
  }

  // 布尔值的取反
  print('!isTrue: ${!isTrue}');
  print('!isFalse: ${!isFalse}');

  // 判断特殊类型
  print('isTrue is bool: ${isTrue is bool}');
  print('isFalse is bool: ${isFalse is bool}');
  print('isTrue is int: ${isTrue is int}');
  num num1 = 0 / 0;
  print('num1 is num: ${num1 is num}');
  print('num1 is Nan: ${num1.isNaN}');
}
